home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / sendmail_header.nasl < prev    next >
Text File  |  2005-03-31  |  3KB  |  87 lines

  1. #
  2. # This script was written by Michael Scheidell SECNAP Network Security
  3. #
  4. # See the Nessus Scripts License for details
  5. #
  6.  
  7. if(description)
  8. {
  9.  script_id(11316);
  10.  script_bugtraq_id(2794, 6991);
  11.  script_cve_id("CAN-2002-1337", "CVE-2001-1349");
  12.  if(defined_func("script_xref"))script_xref(name:"IAVA", value:"2003-A-0002");
  13.  script_version("$Revision: 1.20 $");
  14.  
  15.  name["english"] = "Sendmail remote header buffer overflow";
  16.  script_name(english:name["english"]);
  17.  
  18.  desc["english"] = "
  19. The remote sendmail server, according to its version number,
  20. may be vulnerable to a remote buffer overflow allowing remote
  21. users to gain root privileges.
  22.  
  23. Sendmail versions from 5.79 to 8.12.7 are vulnerable.
  24. Solution : Upgrade to Sendmail ver 8.12.8 or greater or
  25. if you cannot upgrade, apply patches for 8.10-12 here:
  26.  
  27. http://www.sendmail.org/patchcr.html
  28.  
  29. NOTE: manual patches do not change the version numbers.
  30. Vendors who have released patched versions of sendmail
  31. may still falsely show vulnerability.
  32.  
  33. *** Nessus reports this vulnerability using only
  34. *** the banner of the remote SMTP server. Therefore,
  35. *** this might be a false positive.
  36.  
  37. see http://www.iss.net/issEn/delivery/xforce/alertdetail.jsp?oid=21950
  38.     http://www.cert.org/advisories/CA-2003-07.html
  39.     http://www.kb.cert.org/vuls/id/398025
  40.  
  41. Risk factor : High";
  42.     
  43.  script_description(english:desc["english"]);
  44.  
  45.  summary["english"] = "Checks the version number"; 
  46.  script_summary(english:summary["english"]);
  47.  
  48.  script_category(ACT_GATHER_INFO);
  49.  
  50.  script_copyright(english:"This script is Copyright (C) 2003 SECNAP Network Security");
  51.  
  52.  family["english"] = "SMTP problems";
  53.  script_family(english:family["english"]);
  54.  if ( ! defined_func("bn_random") ) 
  55.      script_dependencie("smtpserver_detect.nasl");
  56.  else
  57.      script_dependencie("smtpserver_detect.nasl", "solaris26_105395.nasl", "solaris26_x86_105396.nasl", "solaris7_107684.nasl", "solaris7_x86_107685.nasl", "solaris8_110615.nasl", "solaris8_x86_110616.nasl", "solaris9_113575.nasl", "solaris9_x86_114137.nasl");
  58.  script_require_ports("Services/smtp", 25);
  59.  script_require_keys("SMTP/sendmail");
  60.  exit(0);
  61. }
  62.  
  63. #
  64. # The script code starts here
  65. #
  66.  
  67. include("smtp_func.inc");
  68.  
  69. if ( get_kb_item("BID-6991") ) exit(0);
  70.  
  71.  
  72. port = get_kb_item("Services/smtp");
  73. if(!port) port = 25;
  74.  
  75. banner = get_smtp_banner(port:port);
  76. if(banner)
  77. {
  78.   # Digital Defense came up with this nice regex :
  79.   if(egrep(pattern:".*Sendmail.*(Switch\-((1\.)|(2\.(0\.|1\.[0-4])))|(\/|UCB| )([5-7]\.|8\.([0-9](\.|;|$)|10\.|11\.[0-6]|12\.[0-7](\/| |\.|\+)))).*", string:banner, icase:TRUE))
  80.         security_hole(port);
  81.  
  82.   # Since the regex above is VERY complicated, I also include this simpler one, in case the first misses
  83.   # something.
  84.   else if(egrep(pattern:".*Sendmail (5\.79.*|5\.[89].*|[67]\..*|8\.[0-9]\..*|8\.10\..*|8\.11\.[0-6]|8\.12\.[0-7]|SMI-8\.([0-9]|1[0-2]))/.*", string:banner, icase:TRUE))
  85.      security_hole(port);
  86. }
  87.